import tracker from '../utils/tracker';
export function pv() {
  const connection = navigator.connection;
  tracker.send({
    kind: 'business',
    type: 'pv',
    effectiveType: connection.effectiveType, //网络环境: "4g"
    rtt: connection.rtt,//一个连接的往返时间，即数据发送时刻到接收到确认的时刻的差值
    screen: `${window.screen.width}x${window.screen.height}`//设备分辨率
  });

  const startTime = Date.now();
  window.addEventListener('unload', () => {
    let stayTime = Date.now() - startTime;

    tracker.send({
      kind: 'business',
      type: 'stayTime',
      stayTime
    });

    //todo 用户卸载网页的时候，有时需要向服务器发一些数据。很自然的做法是在unload事件或beforeunload事件的监听函数里面，使用XMLHttpRequest对象发送数据。但是，这样做不是很可靠，因为XMLHttpRequest对象是异步发送，很可能在它即将发送的时候，页面已经卸载了，从而导致发送取消或者发送失败。
    //  解决方法就是 AJAX 通信改成同步发送，即只有发送完成，页面才能卸载。但是，很多浏览器已经不支持同步的 XMLHttpRequest 对象了（即open()方法的第三个参数为false）。
    //  为了解决这个问题，浏览器引入了Navigator.sendBeacon()方法。这个方法还是异步发出请求，但是请求与当前页面脱钩，作为浏览器的任务，因此可以保证会把数据发出去，不拖延卸载流程。
    //  navigator.sendBeacon(url, data);

  }, false);

}
